﻿using Camc.Quality.RecordTable.FormBase;
using Camc.Quality.RecordTable.FormClass;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Camc.Quality.RecordTable.FormEntity
{
    public class 未按要求施加力矩及未打保险防松记录表 : TableBase
    {

        public 未按要求施加力矩及未打保险防松记录表(int serialNum, Guid workStepEntityId, Guid processesEntityId, int sort, string recordElement)
        {
            SerialNum = serialNum;
            WorkStepEntityId = workStepEntityId;
            ProcessesEntityId = processesEntityId;
            Sort = sort;
            RecordElement = recordElement;
        }
        public override string FormName { get; protected set; } = "未按要求施加力矩及未打保险防松记录表";
        #region A10_记录项目
        public override string RecordElement_DisplayName { get; protected set; } = "记录项目";
        public override bool RecordElement_Show { get; protected set; } = true;
        public override int RecordElement_Property { get; protected set; } = 1;
        #endregion
        /// <summary>
        /// 记录要求
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="recordLocation"></param>
        /// <param name="recordMainopoint"></param>
        /// <param name="processorDemand"></param>
        /// <returns></returns>
        public RecordRequirementsEntity SetRecordRequirements(RecordRequirementsEntity entity, string recordLocation, string recordMainopoint, string processorDemand)
        {
            entity.SetRecordLocation(recordLocation, "安装位置", true, true, 0);
            entity.SetRecordMainopoint(recordMainopoint, "紧固件材料及规格", true, true, 0);
            entity.SetProcessorDemand(processorDemand, "拧紧力矩要求N.m", true, true, 0);
            return entity;
        }

        /// <summary>
        /// 实测值
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="firstMeasuredValues"></param>
        /// <param name="measuredActual"></param>
        /// <returns></returns>
        public MeasuredResultEntity SetMeasuredResult(MeasuredResultEntity entity, string firstMeasuredValues, string measuredActual)
        {

            entity.SetFirstMeasuredValues(firstMeasuredValues, "实际力矩施加情况", true, true, 0);
            entity.SetMeasuredActual(measuredActual, "未按要求施加力矩原因/防松方式", true, true, 0);

            return entity;
        }
        /// <summary>
        /// 三检
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public InspectionSignatureEntity SetInspectionSignature(InspectionSignatureEntity entity)
        {
            entity.InspectionSignatureName = "三检";
            entity.SetFirstOperator(null, "操作者", true, true, 0, null, "操作者操作时间", true, true, 0);
            entity.SetSecondOperator(null, "互检者", true, true, 0, null, "互检者操作时间", true, true, 0);
            entity.SetThirdOperator(null, "检验员", true, true, 0, null, "检验员操作时间", true, true, 0);
            return entity;
        }
    }
}
